package com.onepiece.gen.admin.rcp.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 患者信息表
 * </p>
 *
 * @author tangld
 * @since 2022-11-29
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("rcp_patient_info")
public class PatientInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * UUID
     */
    @TableId("patient_id")
    private String patientId;

    /**
     * 管ID
     */
//    @TableField("tube_id")
//    private String tubeId;

    /**
     * 身份证号
     */
    @TableField("idenno")
    private String idenno;

    /**
     * 患者姓名
     */
    @TableField("patient_name")
    private String patientName;

    /**
     * 性别
     */
    @TableField("sex")
    private String sex;

    /**
     * 出生日期
     */
    @TableField("birthday")
    private String birthday;

    /**
     * 患者住址(可扫描身份证获取)
     */
    @TableField("address")
    private String address;

    /**
     * 身份证照片编码(UUID)
     */
    @TableField("photo_id")
    private String photoId;

    /**
     * 身份证扫描时间(即采集时间)
     */
    @TableField("scan_time")
    private LocalDateTime scanTime;

    /**
     * 患者联系电话
     */
    @TableField("mobile")
    private String mobile;

    /**
     * 普查活动编码
     */
    @TableField("active_id")
    private String activeId;

    /**
     * 民族
     */
    @TableField("nation")
    private String nation;

    /**
     * 备注
     */
    @TableField("memo")
    private String memo;

    /**
     * 详细地址
     */
    @TableField("detail_address")
    private String detailAddress;

    /**
     * 与本人关系
     */
    @TableField("relationship")
    private String relationship;

    /**
     * 证件类型
     */
    @TableField("certificate_type")
    private String certificateType;

    /**
     * 国籍
     */
    @TableField("nationality")
    private String nationality;

    /**
     * 患者类别
     */
    @TableField("patient_type")
    private String patientType;

    /**
     * 年龄
     */
    @TableField("age")
    private Integer age;

    /**
     * 来源，0：身份证
     */
    @TableField("source")
    private Integer source;

    /**
     * 数据上报标识，0：未上传，1：已上传
     */
    @TableField("do_report_flag")
    private Integer doReportFlag;

    /**
     * 人员二级分类
     */
    @TableField("second_patient_type")
    private String secondPatientType;

    /**
     * 离线数据同步时间
     */
//    @TableField("offline_sync_time")
//    private LocalDateTime offlineSyncTime;

    /**
     * 修改时间
     */
    @TableField("modify_time")
    private LocalDateTime modifyTime;

    /**
     * 修改人
     */
    @TableField("modifier")
    private String modifier;

//    @TableField("is_deleted")
//    private Boolean isDeleted;

    /**
     * 收费类型
     */
    @TableField("fee_type")
    private String feeType;


}
